"""
基础Schema定义
遵循开发规范，自动处理 snake_case ↔ camelCase 转换
"""
from pydantic import BaseModel, ConfigDict
from pydantic.alias_generators import to_camel


class BaseSchema(BaseModel):
    """
    Schema基类，自动处理命名转换
    Python中使用 snake_case，JSON输出为 camelCase
    """
    model_config = ConfigDict(
        alias_generator=to_camel,      # Python snake_case → JSON camelCase
        populate_by_name=True,         # 支持两种命名方式
        from_attributes=True,          # 支持从 ORM/dataclass 创建
    )
